home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 49 / Amiga Format CD49 (2000-01-17)(Future Publishing)(GB)(Track 1 of 3)[!][issue 2000-02].iso / -serious- / comms / other / novia / src / include / novia_mail.h < prev    next >
C/C++ Source or Header  |  1999-12-06  |  7KB  |  221 lines

  1. #ifndef NOVIA_MAIL_H
  2. #define NOVIA_MAIL_H
  3. #define NOVIA_MAIL_H_VERSION "$VER: 0.01 (08.05.1998)"
  4. // (c) Copyright 1996-1998 by Thorsten Gehler
  5. // All rights reserved. Read license.readme for copyright informations.
  6.  
  7. #ifndef NOVIA_DATE_H
  8. #include <novia/novia_date.h>
  9. #endif
  10.  
  11. #ifndef NOVIA_DOS_H
  12. #include <novia/novia_dos.h>
  13. #endif
  14.  
  15. #define MAILTYPE_NOVIA    1
  16. #define MAILTYPE_UUCP    2
  17. #define MAILTYPE_FIDO    3
  18.  
  19.  
  20. #define MAIL_IMPORTANCE_LOW        -1
  21. #define MAIL_IMPORTANCE_NORMAL    0
  22. #define MAIL_IMPORTANCE_HIGH        1
  23.  
  24.  
  25. struct MailEntry
  26. {
  27.     struct ItemInfoBlock iib;    // 512
  28.     Date    SendDate;                // 524  import date in database 
  29.     Date    ExpirationDate;        // 536  auto-killing on ... 
  30.     UWORD    ExpirationDays;        // 538    auto-killing in .. days 
  31.     UBYTE    importance;                // 539  priority of mail
  32.     UBYTE    NetworkType;            // 540    >0 if uucp, fido or other mails
  33.     ULONG    ItemType;                // 544    0 - mail
  34.     ULONG    replys;                    // 548
  35.     ULONG ReplyToUser;            // 552
  36.     ULONG ReplyToList;            // 556
  37.     ULONG ReturnToUser;            // 560
  38.     ULONG ReturnToList;            // 564
  39.     UBYTE Receipt;                    // 565
  40.     UBYTE    Return;                    // 566
  41.     UBYTE copy_own;                // 567
  42.     UBYTE    Anonymous;                // 568
  43.                                         //            1 - archive
  44.     ULONG    ToUser;                    // 572  internal-items only
  45.     ULONG ToUserList;                // 576
  46.     ULONG    FromUser;                // 580  internal-items only
  47.     ULONG    RealUser;                // 584  normaly a copy of FromUser. you can use this entry, if writers name is an alias or anonymous
  48.     ULONG    CCUser;                    // 588
  49.     ULONG CCUserList;                // 592
  50.     ULONG BCCUser;                    // 596
  51.     ULONG BCCUserList;            // 600
  52.  
  53.     char    FromRealName[40];        // 640  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  54.     char    From[80];                // 720  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  55.     char    ToRealName[40];        // 760  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  56.     char    To[80];                    // 840  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  57.     char    Alias[80];                // 920  alias name 
  58.     char    CC[80];                    // 1000
  59.     char  BCC[80];                    // 1080
  60.  
  61.     ULONG    FileVersion;            // 1084 Version of file 
  62.     ULONG    MailListID;                // 1088 MailList ID Number 
  63.  
  64.     char  *text;                    // 1092
  65.     ULONG headersize;                // 1096
  66.     ULONG    text_seek;                // 1100 Startseek in [Userpath]/MailData 
  67.     ULONG    length;                    // 1104
  68.     ULONG besttransfer;            // 1108
  69.     ULONG    downloads;                // 1112
  70.     ULONG DirIP;                    // 1116
  71.     ULONG    first_reply;            // 1120
  72.     char  Organization[80];        // 1200
  73. };
  74.  
  75. struct NewMail
  76. {
  77.     ULONG    PostAccess;            // 112 groups which may Post
  78.     ULONG    UploadAccess;        // 116 ... Upload/Respong access
  79.     ULONG    DownloadAccess;    // 120 ... Download/Read access
  80.     ULONG    ComputerTypes;        // 124
  81.  
  82.     UBYTE    NoItems;                // 125 user can't add a item/reply to subboard/item
  83.     ULONG    ReplyAccess;        // 132
  84.     UBYTE    PrivateMail;        // 153
  85.     UBYTE    NoSignatures;        // 154
  86.     UBYTE    Anonymous;            // 155
  87.  
  88.     ULONG    CreateUserIP;        // 160
  89.     char    subject[128];        // 292 viewtitle
  90.     char    Filename[108];        // 412 copy of FileInfoBlock->fib_FileName
  91.     char    Comment[80];        // 492 copy of FileInfoBlock->fib_Comment
  92.     Date    SendDate;            // 524  import date in database 
  93.     Date    ExpirationDate;    // 536  auto-killing on ... 
  94.     UWORD    ExpirationDays;    // 538    auto-killing in .. days 
  95.     UBYTE    MailType;            // 539  reserved
  96.     UBYTE    NetworkType;        // 540    >0 if uucp, fido or other mails
  97.     ULONG    ItemType;            // 544    0 - mail
  98.                                     //        1 - archive
  99.  
  100.     ULONG    ToUser;                    // 548  internal-items only
  101.     ULONG    FromUser;                // 552  internal-items only
  102.     ULONG    RealUser;                // 556  normaly a copy of FromUser. you can use this entry, if writers name is an alias or anonymous
  103.     ULONG CCUser;
  104.     ULONG BCCUser;
  105.  
  106.     char    *FromRealName;        // 676  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  107.     char    *From;                // 676  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  108.     char    *ToRealName;        // 796  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  109.     char    *To;                        // 796  for FIDO,Z-Net,SMTP (RFC 821/822) Messages or other imported messages
  110.     char    *Alias;                // 876  alias name 
  111.     char  *CC;
  112.     char    *BCC;
  113.  
  114.     char    MailListMail;            // 878 MailList-Mail 
  115.     char    ReservedFlags[2];        // 880
  116.     char    *Organization;
  117.  
  118.     ULONG    FileVersion;            // 1016 Version of file 
  119.     ULONG    MailListID;                // 1020 MailList ID Number 
  120.     char    *text;                    // 1024 Startseek in [Userpath]/MailData 
  121.     ULONG    length;                    // 1028
  122.     ULONG    DirIP;                    // 1032 serial directory number                // New in V0.14
  123.     ULONG    replys;                    // 1036
  124.     ULONG ReplyToUser;
  125.     ULONG ReturnToUser;
  126.     UBYTE Receipt;
  127.     UBYTE    Return;
  128.     UBYTE FileMail;
  129.     UBYTE copy_own;
  130.     BYTE    importance;
  131. };
  132.  
  133. struct INet_Field_Entry
  134. {
  135.     struct INet_Field_Entry *ln_Succ;    // next user
  136.     struct INet_Field_Entry *ln_Pred;    // next user
  137.     ULONG     fieldid;
  138.     ULONG  fieldtype;
  139. };
  140.  
  141.  
  142. struct INet_User_Address
  143. {
  144.     INet_Field_Entry field;
  145.     char        *RealName;
  146.     char        *UserName;
  147. };
  148.  
  149. struct INet_String
  150. {
  151.     INet_Field_Entry field;
  152.     char        *string;    
  153. };
  154.  
  155.  
  156. #define INET_FIELD_TYPE_USER_ADDRESS                        1
  157. #define INET_FIELD_TYPE_STRING                                2
  158.  
  159. #define INET_FIELD_ID_X_ENVELOPE_FROM                        1
  160. #define INET_FIELD_ID_X_ENVELOPE_TO                            2
  161. #define INET_FIELD_ID_FROM                                        3
  162. #define INET_FIELD_ID_TO                                        4
  163. #define INET_FIELD_ID_SENDER                                    5
  164. #define INET_FIELD_ID_REPLY_TO                                6
  165. #define INET_FIELD_ID_CC                                        7
  166. #define INET_FIELD_ID_BCC                                        8
  167. #define INET_FIELD_ID_RETURN_RECEIPT_TO                    9
  168. #define INET_FIELD_ID_DISPOSITION_NOTIFICATION_TO        10
  169. #define INET_FIELD_ID_MESSAGE_ID                                11
  170. #define INET_FIELD_ID_ORGANIZATION                            12
  171. #define INET_FIELD_ID_DATE                                        13
  172. #define INET_FIELD_ID_X_MAILER                                14
  173. #define INET_FIELD_ID_SUBJECT                                    15
  174.  
  175. struct INet_EMail_Entry
  176. {
  177.     struct ItemInfoBlock iib;        // 512
  178.     Date    SendDate;                    // 524  import date in database 
  179.     Date    ExpirationDate;            // 536  auto-killing on ... 
  180.     UWORD    ExpirationDays;            // 538    auto-killing in .. days 
  181.     UBYTE    Importance;                    // 539  priority of mail
  182.     UBYTE res;                            // 540
  183.     ULONG replys;                        // 544
  184.     ULONG    next_replyIP64;            // 548 
  185.     ULONG next_replyIP;                // 552
  186.     ULONG    textsize;                    // 556
  187.     ULONG headersize;                    // 560
  188.     ULONG    seek;                            // 564 Startseek in [Userpath]/MailData 
  189.     ULONG    xxxxxx;                        // 568
  190.  
  191.     ULONG FieldEntrys;                // 572
  192.     ULONG FirstField64;                // 576
  193.     ULONG FirstField;                    // 580
  194.     ULONG FieldSize;                    // 584
  195.     UBYTE resdf[16];                    // 600
  196. };
  197.  
  198. struct INet_EMail
  199. {
  200.     struct ItemInfoBlock iib;    // 512
  201.     Date    SendDate;                // 524  import date in database 
  202.     Date    ExpirationDate;        // 536  auto-killing on ... 
  203.     UWORD    ExpirationDays;        // 538    auto-killing in .. days 
  204.     UBYTE    Importance;                // 539  priority of mail
  205.     UBYTE res;                        // 540
  206.     ULONG replys;                    // 544
  207.     ULONG    next_replyIP64;        // 548 
  208.     ULONG next_replyIP;            // 552
  209.     ULONG    textsize;                // 556
  210.     ULONG headersize;                // 560
  211.     ULONG    seek;                        // 564 Startseek in [Userpath]/MailData 
  212.     ULONG    xxxxxx;                    // 568
  213.  
  214.     MinList fieldlist;            // 580
  215.     char  *text;                    // 584
  216.     char  *header;                    // 588
  217. };
  218.  
  219.  
  220.  
  221. #endif